package com.yunxi.model.order;

import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 渠道商退车申请
 * </p>
 *
 * @author 
 * @since 2019-07-16
 */
@Data
@EqualsAndHashCode(callSuper = false)

@TableName("pms_vehicle_retur_apply")
@ApiModel(value="VehicleReturApply对象", description="渠道商退车申请")
public class VehicleReturApply implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键编号")
    @TableId(value = "VEHICLE_RETUR_ID", type = IdType.UUID)
    private String vehicleReturId;

    @ApiModelProperty(value = "创建时间")
    @TableField(value = "CREATE_DATE",fill = FieldFill.INSERT)
    private Date createDate;

    @ApiModelProperty(value = "创建人")
    @TableField("CREATE_BY")
    private String createBy;

    @ApiModelProperty(value = "修改时间")
    @TableField(value = "UPDATE_DATE",fill = FieldFill.UPDATE)
    private Date updateDate;

    @ApiModelProperty(value = "修改人")
    @TableField("UPDATE_BY")
    private String updateBy;

    @ApiModelProperty(value = "状态1启用0禁用")
    @TableField("STATUS")
    private Integer status;

    @ApiModelProperty(value = "是否删除")
    @TableField("IS_DEL")
    private Integer isDel;

    @ApiModelProperty(value = "备注")
    @TableField("MEMO")
    private String memo;

    @ApiModelProperty(value = "订货单号")
    @TableField("ORDER_CAR_ID")
    private String orderCarId;

    @ApiModelProperty(value = "审核状态1审核通过 2待审核 3驳回")
    @TableField("CHECK_STATUS")
    private Integer checkStatus;

    @ApiModelProperty(value = "驳回原因")
    @TableField("REJECT_INFO")
    private String rejectInfo;

    @ApiModelProperty(value = "一级审核日期")
    @TableField(value = "ONE_LEVEL_AUDIT_DATE",fill = FieldFill.INSERT)
    private Date oneLevelAuditDate;

    @ApiModelProperty(value = "一级审核人")
    @TableField("ONE_LEVEL_AUDIT_BY")
    private String oneLevelAuditBy;

    @ApiModelProperty(value = "二级审核日期")
    @TableField(value = "TWO_LEVEL_AUDIT_DATE",fill = FieldFill.UPDATE)
    private Date twoLevelAuditDate;

    @ApiModelProperty(value = "二级审核人")
    @TableField("TWO_LEVEL_AUDIT_BY")
    private String twoLevelAuditBy;

    @ApiModelProperty(value = "三级审核日期")
    @TableField(value = "THREE_LEVEL_AUDIT_DATE",fill = FieldFill.UPDATE)
    private Date threeLevelAuditDate;

    @ApiModelProperty(value = "三级审核人")
    @TableField("THREE_LEVEL_AUDIT_BY")
    private String threeLevelAuditBy;

    @ApiModelProperty(value = "一级审核状态")
    @TableField("ONE_LEVEL_CHECK_STATUS")
    private Integer oneLevelCheckStatus;

    @ApiModelProperty(value = "二级审核状态")
    @TableField("TWO_LEVEL_CHECK_STATUS")
    private Integer twoLevelCheckStatus;

    @ApiModelProperty(value = "三级审核状态")
    @TableField("THREE_LEVEL_CHECK_STATUS")
    private Integer threeLevelCheckStatus;

    @ApiModelProperty(value = "退车原因")
    @TableField("INFO")
    private String info;

    @ApiModelProperty(value = "当前是第几级审核")
    @TableField("CURRENT_LEVEL")
    private Integer currentLevel;
}
